//*****************************************************************
// PIDControlThread.h
//
//  Created on: Jan 21, 2012
//      Author: Christopher Wood
//              Robert Livosi
//
//  $Id: PIDControlThread.h 24 2012-01-28 02:54:38Z caw4567@gmail.com $
//*****************************************************************

#ifndef PIDCONTROLTHREAD_H_
#define PIDCONTROLTHREAD_H_

#include "ControlThread.h"

/**
 * This class is responsible for handling the user input that controls
 * the main analog I/O thread group and the PID transform function.
 */
class PIDControlThread : public ControlThread
{
public:
	/**
	 * Default constructor that sets the transform and I/O threads.
	 *
	 * @param tThread - the desired transform thread to control.
	 * @param ioGroup - the I/O group that is managed.
	 */
	PIDControlThread(TransformThread* tThread, IOThreadGroup* ioGroup);

	/**
	 * Default destructor.
	 */
	virtual ~PIDControlThread();

	/**
	 * Start the thread.
	 */
	void run();
};

#endif /* PIDCONTROLTHREAD_H_ */
